-
Notifications
You must be signed in to change notification settings - Fork 2
/
Fflush.c
51 lines (39 loc) · 1.48 KB
/
Fflush.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
/*++
toro C Library
https://github.com/KilianKegel/toro-C-Library#toro-c-library-formerly-known-as-torito-c-library
Copyright (c) 2017-2024, Kilian Kegel. All rights reserved.
SPDX-License-Identifier: GNU General Public License v3.0
Module Name:
Fflush.c
Abstract:
Implementation of the Standard C function.
Flushes a stream.
Author:
Kilian Kegel
--*/
#include <stdio.h>
#include <CdeServices.h>
extern int __cdeIsFilePointer(void* stream);
extern int __cdeOnErrSet_errno(CDE_STATUS Status, int Error);
extern void* __cdeGetIOBuffer(unsigned i);
/*
Synopsis
#include <stdio.h>
int fflush(FILE *stream);
Description
https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/fflush?view=msvc-160&viewFallbackFrom=vs-2019
Ifstream points to an output stream or an update stream in which the most recent
operation was not input, the fflush function causes any unwritten data for that stream
to be delivered to the host environment to be written to the file; otherwise, the behavior is
undefined.
Ifstream is a null pointer, the fflush function performs this flushing action on all
streams for which the behavior is defined above.
Returns
The fflush function sets the error indicator for the stream and returns EOF if a write
error occurs, otherwise it returns zero.
*/
int fflush(FILE* stream)
{
CDE_APP_IF* pCdeAppIf = __cdeGetAppIf();
return pCdeAppIf->pCdeServices->pFFlushCORE(pCdeAppIf, (CDEFILE*)stream);
}